/**
 * 
 */
package compilador.interfaces;

import java.util.ArrayList;

import javax.swing.tree.MutableTreeNode;

import compilador.analizadorSemantico.tablaSimbolos.TablaSimboloSemantico;
import compilador.analizadorSintactico.categoriasSintacticas.SimboloError;

/**
 * Interface que permite clasificar los tipos de categorias sintacticas
 * que corresponden a una sentencia
 * 
 * @author samsung
 *
 */
public interface Sentencia {

	public String getJavaCode();

	/**
	 * @return
	 */
	public MutableTreeNode getArbolVisual();

	/**
	 * @param ts
	 * @param errores
	 * @param claseActual
	 * @param metodoActual
	 */
	public void AnalizarSemantica(TablaSimboloSemantico ts,
			ArrayList<SimboloError> errores, String claseActual,
			String metodoActual);
}
